package com.hmdp.config;

// 导入Redisson的客户端类
import org.redisson.Redisson;
// 导入Redisson的客户端接口
import org.redisson.api.RedissonClient;
// 导入Redisson的配置类
import org.redisson.config.Config;
// 导入Spring框架的注解，用于声明一个配置类
import org.springframework.context.annotation.Bean;
// 导入Spring框架的注解，用于声明一个配置类
import org.springframework.context.annotation.Configuration;


/**
 * 配置RedissonClient，它是Redisson库提供的一个用于与Redis进行交互的客户端接口。
 * 代码中创建了一个RedissonConfig类，并在这个类中通过@Bean注解声明了一个方法redissonClient，Spring会调用这个方法并管理返回的RedissonClient对象。
 * 在redissonClient方法中，首先创建了一个Config对象，然后使用useSingleServer方法配置为单节点模式，并设置了Redis的地址和密码。
 * 最后，使用Redisson.create(config)方法根据配置创建并返回RedissonClient对象。
 */

// 使用@Configuration注解声明这个类为Spring的配置类
@Configuration
public class RedissonConfig {

    // 使用@Bean注解声明一个方法，Spring会调用该方法并管理返回的对象
    @Bean
    public RedissonClient redissonClient(){
        // 创建一个Redisson的配置对象
        Config config = new Config();
        // 使用单节点模式配置Redisson
        config.useSingleServer()
                // 设置Redis的地址
                .setAddress("redis://192.168.233.133:6379")
                // 设置Redis的密码
                .setPassword("18725885378zzy");
        // 根据配置创建RedissonClient对象
        // RedissonClient是Redisson的客户端接口，用于与Redis进行交互
        return Redisson.create(config);
    }
}